1
พื้นฐานของการไหลของโปรแกรมและการแมปข้อมูล
AI015Lesson 6
00:00

1. การจัดการชื่อเรื่อง (Namespace)

การควบคุมสภาพแวดล้อมการเขียนโปรแกรมเริ่มต้นจากการโหลดโมดูล using Dates ส่งฟังก์ชันทั้งหมดไปยังขอบเขตปัจจุบัน ในขณะที่ import Dates ต้องระบุคำนำหน้าอย่างชัดเจน (เช่น Dates.now()) ซึ่งจำเป็นต่อการหลีกเลี่ยงความขัดแย้งของชื่อในระบบการแมปข้อมูลขนาดใหญ่

2. การส่งผ่านหลายแบบในฐานะลำดับตรรกะ

ในจูเลีย การควบคุมลำดับไม่ใช่แค่เกี่ยวกับ if ประโยค; มันถูกฝังอยู่ในระบบประเภทข้อมูล โดยการกำหนดเวอร์ชันเฉพาะของฟังก์ชัน (เช่น foo(::Integer, ::Integer) หรือ foo(::Number, ::Number)) คอมไพเลอร์จะส่งการดำเนินการโดยอัตโนมัติไปยังกรณีที่ตรงกันมากที่สุด ซึ่งสร้างต้นไม้ตัดสินใจที่มีประสิทธิภาพสูงและแฝงอยู่ตามประเภทข้อมูล

foo(50, 100) → "A และ B เป็นจำนวนเต็มทั้งคู่"
foo(4.5, 20) → "A และ B เป็นจำนวนทั้งคู่"

3. การแมปข้อมูลแบบลำดับชั้น (วันที่)

โครงสร้างข้อมูลที่ซับซ้อน เช่น ประเภทเวลา จะถูกจัดเรียงเป็นลำดับชั้นอย่างเป็นทางการ ซึ่งทำให้สามารถดำเนินการคำนวณเชิงพาณิชย์ได้ในระดับความละเอียดต่างกัน เช่น การคำนวณช่วงเวลาระหว่าง DateTime กับ Date

AbstractTimeTimeTypePeriodInstantDateTimeMillisecond
main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>